var r = Object.defineProperty;
var O = (t, e, o) =>
  e in t
    ? r(t, e, { enumerable: !0, configurable: !0, writable: !0, value: o })
    : (t[e] = o);
var s = (t, e, o) => (O(t, typeof e != 'symbol' ? e + '' : e, o), o);
import { SCALAR as E } from './identity.js';
import { NodeBase as n } from './Node.js';
import { toJS as u } from './toJS.js';
const m = t => !t || (typeof t != 'function' && typeof t != 'object');
class L extends n {
  constructor(o) {
    super(E);
    s(this, 'value');
    this.value = o;
  }
  toJSON(o, i) {
    return i != null && i.keep ? this.value : u(this.value, o, i);
  }
  toString() {
    return String(this.value);
  }
}
s(L, 'BLOCK_FOLDED', 'BLOCK_FOLDED'),
  s(L, 'BLOCK_LITERAL', 'BLOCK_LITERAL'),
  s(L, 'PLAIN', 'PLAIN'),
  s(L, 'QUOTE_DOUBLE', 'QUOTE_DOUBLE'),
  s(L, 'QUOTE_SINGLE', 'QUOTE_SINGLE');
export { L as Scalar, m as isScalarValue };
